var char_ttf=[
    ["    ","    ","    ","    ","    ","    "],
    ["    ████╗","   ██╔██║","  ██╔╝██║"," ███████║","██╔═══██║","╚═╝   ╚═╝"],
    ["██████╗ ","██╔══██╗","██████╔╝","██╔══██╗","██████╔╝","╚═════╝ "],
    [" ██████╗","██╔════╝","██║     ","██║     ","╚██████╗"," ╚═════╝"],
    ["██████╗ ","██╔══██╗","██║  ██║","██║  ██║","██████╔╝","╚═════╝ "],
    ["███████╗","██╔════╝","█████╗  ","██╔══╝  ","███████╗","╚══════╝"],
    ["███████╗","██╔════╝","█████╗  ","██╔══╝  ","██║     ","╚═╝     "],
    [" █████╗ ","██╔═══╝ ","██║ ██╗ ","██║ ╚██╗","╚█████╔╝"," ╚════╝ "],
    ["██╗  ██╗","██║  ██║","███████║","██╔══██║","██║  ██║","╚═╝  ╚═╝"],
    [" ██████╗","   ██╔═╝","   ██║  ","   ██║  "," ██████╗"," ╚═════╝"],
    ["     ██╗","     ██║","     ██║","██   ██║","╚█████╔╝"," ╚════╝ "],
    ["██╗  ██╗","██║ ██╔╝","█████╔╝ ","██╔═██╗ ","██║  ██╗","╚═╝  ╚═╝"],
    ["██╗     ","██║     ","██║     ","██║     ","███████╗","╚══════╝"],
    ["██╗   ██╗","███╗ ███║","████████║","██╔██╔██║","██║╚═╝██║","╚═╝   ╚═╝"],
    ["██╗   ██╗","███╗  ██║","█████╗██║","██╔█████║","██║ ╚███║","╚═╝  ╚══╝"],
    [" ██████╗ ","██╔═══██╗","██║   ██║","██║   ██║","╚██████╔╝"," ╚═════╝ "],
    ["██████╗ ","██╔══██╗","██████╔╝","██╔═══╝ ","██║     ","╚═╝     "],
    [" ██████╗ ","██╔═══██╗","██║   ██║","██║  ██╔╝","╚████╔██╗"," ╚═══╝╚═╝"],
    ["██████╗ ","██╔══██╗","██████╔╝","██╔══██╗","██║  ██║","╚═╝  ╚═╝"],
    ["███████╗","██╔════╝","███████╗","╚════██║","███████║","╚══════╝"],
    ["████████╗","╚══██╔══╝","   ██║   ","   ██║   ","   ██║   ","   ╚═╝   "],
    ["██╗   ██╗","██║   ██║","██║   ██║","██║   ██║","╚██████╔╝"," ╚═════╝ "],
    ["██╗   ██╗","██║   ██║","██║   ██║","╚██╗ ██╔╝"," ╚████╔╝ ","  ╚═══╝  "],
    ["██╗   ██╗","██║██╗██║","████████║","███╔═███║","██╔╝ ╚██║","╚═╝   ╚═╝"],
    ["██╗  ██╗","╚██╗██╔╝"," ╚███╔╝ "," ██╔██╗ ","██╔╝╚██╗","╚═╝  ╚═╝"],
    ["██╗   ██╗","╚██╗ ██╔╝"," ╚████╔╝ ","  ╚██╔╝  ","   ██║   ","   ╚═╝   "],
    ["████████╗","╚════██╔╝","   ██╔═╝ "," ██╔═╝   ","████████╗","╚═══════╝"],
];
var trans_ttf=func(string)
{
    var str=["","","","","",""];
    for(var i=0;i<size(string);i+=1)
    {
        var number=string[i];
        if(97<=number and number<=122)
            for(var j=0;j<6;j+=1)
                str[j]~=char_ttf[number-96][j];
        elsif(65<=number and number<=90)
            for(var j=0;j<6;j+=1)
                str[j]~=char_ttf[number-64][j];
        else
            for(var j=0;j<6;j+=1)
                str[j]~=char_ttf[0][j];
    }
    foreach(var i;str)
        println(i);
    return;
}
var curve1=func()
{
    var shadow=["░","▒","▓","█","▀","▄","▐","▌"];
    rand(100);
    var s="";
    for(var i=0;i<10;i+=1)
    {
        for(var j=0;j<40;j+=1)
            s~=shadow[int(8*rand())];
        s~='\n';
    }
    print(s);
}
var curve2=func()
{
    var table=["╚","═","╝","╔","║","╗"];
    rand(100);
    var s="";
    for(var i=0;i<10;i+=1)
    {
        for(var j=0;j<40;j+=1)
            s~=table[int(6*rand())];
        s~='\n';
    }
    print(s);
}
var curve3=func()
{
    var s=["","","","","",""];
    var cnt=0;
    foreach(var char;char_ttf)
    {
        cnt+=1;
        forindex(var i;char)
            s[i]~=char[i];
        if(cnt==9)
        {
            forindex(var i;s)
            {
                println(s[i]);
                s[i]='';
            }
            cnt=0;
        }
    }
    return;
}
var curve4=func()
{
    var arr=[0,1,2,3,4,5,6,7,8,0,1,2,3,4,5,6,7,8,0,1,2,3,4,5,6,7,8];
    for(var loop=0;loop<10;loop+=1)
    {
        for(var i=26;i>=0;i-=1)
        {
            var rand_index=int(i*rand());
            (arr[i],arr[rand_index])=(arr[rand_index],arr[i]);
        }
        #            0   1   2   3   4   5   6   7   8
        var shadow=[" ","░","▒","▓","█","▀","▄","▐","▌"];
        var s="";
        for(var i=0;i<size(arr);i+=1)
                s~=shadow[arr[i]];
        println(s);
    }
    return;
}
var curve5=func(){
    for(var i=0;i<=9;i+=1)
        println(i,"\e["~i~"mh \e[0m");
    for(var i=30;i<=37;i+=1)
        println(i,"\e["~i~"mh \e[0m");
    for(var i=40;i<=47;i+=1)
        println(i,"\e["~i~"mh \e[0m");
    for(var i=90;i<=97;i+=1)
        println(i,"\e["~i~"mh \e[0m");
    for(var i=100;i<=107;i+=1)
        println(i,"\e["~i~"mh \e[0m");
}
var curve6=func(){
    var shadow=["m░\e[0m","m▒\e[0m","m▓\e[0m","m█\e[0m","m▀\e[0m","m▄\e[0m","m▐\e[0m","m▌\e[0m"];
    var front=[
        "30","31","32","33","34","35","36","37",
        "90","91","92","93","94","95","96","97"
    ];
    var back=[
        "40","41","42","43","44","45","46","47",
        "100","101","102","103","104","105","106","107"
    ];
    rand(time(0));
    for(var i=0;i<15;i+=1){
        for(var j=0;j<45;j+=1)
            print("\e["~front[16*rand()]~";"~back[16*rand()]~shadow[8*rand()]);
        print('\n');
    }
}
if(os.platform()=="windows")
    system("chcp 65001");
trans_ttf("just for test");
trans_ttf(" ValKmjolnir ");
trans_ttf("just for fun");
curve1();
curve2();
curve3();
curve4();
curve5();
curve6();